#include <stdio.h>

int jiecheng(int n)
{
    if(n == 1)
        return 1;

    return jiecheng(n-1) * n;
}

void print_from_1_n(int n)
{
    if(n <= 0)
        return;

    print_from_1_n(n-1);
    printf("%d\t", n);
}

int main(int argc, char const *argv[])
{
    int n;
    scanf("%d", &n);
    printf("%d\n", jiecheng(n));

    print_from_1_n(n);

    return 0;
}
